home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 46 / Amiga Format CD46 (1999-10-20)(Future Publishing)(GB)[!][issue 1999-12].iso / -in_the_mag- / reader_requests / emacsfilereq / filereq.el < prev    next >
Lisp/Scheme  |  1999-09-13  |  3KB  |  79 lines

  1. ;;; This file reconfigures some keys so that filename requiring functions
  2. ;;; ask their filename with ReqTools.library using EmacsFile.elx
  3.  
  4. ;;  Written in 1993 by Matti Rintala (email: bitti@cs.tut.fi)
  5.  
  6. ;; FileReq-arexxscript stores the filename into the variable filereq-filename
  7.  
  8.  
  9. (defun filereq-read-file-name (prompt directory filename exist)
  10.   "Asks a filename via ARexx and ReqTools.library. After call filename is in filereq-filename."
  11.   (setq filereq-filename nil)
  12.   ;; Now call ARexx script
  13.   (amiga-arexx-do-command (concat "FileReq '" directory "' '" filename
  14.                   "' " (if exist 1 0) " " prompt) nil))
  15.  
  16. (defun filereq-find-file ()
  17.   "Asks for a filename with filereq-read-file-name and performs find-file"
  18.   (interactive)
  19.   (filereq-read-file-name "Find File" default-directory "" nil)
  20.   ;; Perform find-file if filename was given
  21.   (if filereq-filename
  22.       (find-file filereq-filename)))
  23.  
  24. (defun filereq-find-file-read-only ()
  25.   "Asks for a filename with filereq-read-file-name and performs find-file-read-only"
  26.   (interactive)
  27.   (filereq-read-file-name "Find File Read Only" default-directory "" t)
  28.   ;; Perform function if filename was given
  29.   (if filereq-filename
  30.       (find-file-read-only filereq-filename)))
  31.  
  32. (defun filereq-find-alternate-file ()
  33.   "Asks for a filename with filereq-read-file-name and performs find-alternate-file"
  34.   (interactive)
  35.   (filereq-read-file-name "Find Alternate File" default-directory "" nil)
  36.   ;; Perform function if filename was given
  37.   (if filereq-filename
  38.       (find-alternate-file filereq-filename)))
  39.  
  40. (defun filereq-write-file ()
  41.   "Asks for a filename with filereq-read-file-name and performs write-file"
  42.   (interactive)
  43.   (filereq-read-file-name "Write File" default-directory "" nil)
  44.   ;; Perform function if filename was given
  45.   (if filereq-filename
  46.       (write-file filereq-filename)))
  47.  
  48. (defun filereq-insert-file ()
  49.   "Asks for a filename with filereq-read-file-name and performs insert-file"
  50.   (interactive)
  51.   (filereq-read-file-name "Insert File" default-directory "" t)
  52.   ;; Perform function if filename was given
  53.   (if filereq-filename
  54.       (insertfile filereq-filename)))
  55.  
  56. (defun filereq-find-file-other-window ()
  57.   "Asks for a filename with filereq-read-file-name and performs find-file-other-window"
  58.   (interactive)
  59.   (filereq-read-file-name "Find File Other Window" default-directory "" nil)
  60.   ;; Perform function if filename was given
  61.   (if filereq-filename
  62.       (find-file-other-window filereq-filename)))
  63.  
  64.  
  65. (defun filereq-set-keys ()
  66.   "Redefines appropriate keys to use filereq-functions"
  67.   (interactive)
  68.  
  69.   (global-set-key "\C-x\C-f" 'filereq-find-file)
  70.   (global-set-key "\C-x\C-w" 'filereq-write-file)
  71.   (global-set-key "\C-x\C-r" 'filereq-find-file-read-only)
  72.   (global-set-key "\C-x\C-v" 'filereq-find-alternate-file)
  73.   (global-set-key "\C-xi" 'filereq-insert-file)
  74.   (global-set-key "\C-x4\C-f" 'filereq-find-file-other-window)
  75.   (global-set-key "\C-x4f" 'filereq-find-file-other-window))
  76.  
  77.  
  78.  
  79.